This invention relates to interfaces between networked host computers and one or more printers serving the network. The invention is disclosed particularly in relation to a network adapter circuit having a first physical connection to a computer network and a second physical connection to a printer controller.
A communication interface, between a computer network and a printer for printing print jobs for computers on the network, is usually provided by a network adapter (hardware and software) located on a circuit card internal to the printer or supplied as an external device. The network adapter is programmed to send and receive information using the network operating system, for example to obtain print job data and control commands. The network adapter in turn is capable of communicating with the printer controller to effect printing of the print jobs received from the host computers on the network.
In accordance with an embodiment of the invention to be described herein, an internal network adapter is contained in a laser printer, permitting direct connection to a local area network without using a dedicated print server (computer) on the network. The illustrated internal network adapter is in bi-directional communication with host computers on the network. In the described embodiment of the invention, this bi-directional communication is in accordance with a protocol known as the Network Printer Alliance Protocol. The published Network Printer Alliance Protocol (NPAP) defines a bi-directional means of communication between one host computer and one printer. The NPAP provides a means of returning printer status information to a host computer. Status information from a printer and queries from a host computer for status information conforming to the NPAP are communicated, as well as print job data and commands contained within NPAP "wrappers". In the present system, multiple host computers are connected over a network to a network adapter for a single printer, and printer status messages and inquiries are handled by the network adapter and each host computer separately from the processing of print job data. This permits asynchronous communication between the printer and each host utilizing the printer regardless of a "busy" condition at the printer while the printer is receiving print jobs. Sending each printer status message to each NPAP-compatible host computer on the network creates a large amount of network traffic, degrading network communication efficiency.
It is the aim of the invention to enhance the bi-directional communication in network printing systems of the foregoing type to allow multiple host computers to efficiently communicate with a single printer. In accordance with the embodiment of the invention disclosed hereinafter, this objective is accomplished by having the internal network adapter for the printer present multiple virtual printers conforming to the NPA Protocol to the multiple hosts on the network. This is accomplished by storing and utilizing particular NPAP data for each host on the network that wishes to communicate with the printer using the NPA Protocol.
In the illustrated form of the invention, the printer controller issues Device Status Alerts (DSA's) to the network adapter concerning problems or potential problems in performing printing. The printer controller also communicates printer operator panel changes and print job alerts to the network adapter. When one of these asynchronous events occurs at the printer, a message is sent, utilizing the NPAP, from the printer to the network adapter. The network adapter then consults sets of data stored for each host computer on the network which is in NPAP-compliant bi-directional communication with the adapter (and printer). The network adapter uses this data to determine which host computers wish to receive the printer information contained in the message. The network adapter then sends the printer information to only those host computers which have requested it.
In the form of the invention described herein, the foregoing printer information is indicative of a class or category of printer information.
After receiving this general information, a host computer can request the detailed information of exactly what type of asynchronous event has occurred. The detailed information requested by an interested host computer, and obtained from the printer by the network adapter, is then sent to the requesting host.